#ifndef MINEFIELD_HPP
#define MINEFIELD_HPP
//=========================================================
//  NUMBERS
//=========================================================
struct numbers{
    int id; //id пары связных состояний
    int qst; //номер КС
    int airline_id; //id ВТ
    numbers *next;
};
//=========================================================
//  CLASS MINE_FIELD
//=========================================================
//  состояния в матрице:
//  0 - свободно
//  1 - запрещено
//  5 - связное
//=========================================================
class minefield{
  int link_count; //количество пересечений
  int st_id; //идентификатор состояния
  bool plane; //для имитационного эксперимента, занят или свободен Воздушным Судном
  numbers *links;
public:
  minefield(){
    links = NULL;
    link_count = 0;
    st_id = 0;
    plane = false;
  }
  //-------------------------------------------------------
  //получить количество пересечений
  int get_link_count(){ return this->link_count; }
  //-------------------------------------------------------
  void add(int id, int airline_id, int qst){
    numbers *tmp;
    tmp = new numbers;
    tmp->airline_id = airline_id;
    tmp->id = id;
    tmp->qst = qst;
    tmp->next = this->links;
    this->links = tmp;
    ++this->link_count;
  }
  //-------------------------------------------------------
  //добавить id к паре связных КС
  void set_id(int id){
    this->st_id = id;
  }
  //-------------------------------------------------------
  //получить id пары связных КС
  int get_id(){ return this->st_id; }
  //-------------------------------------------------------
  //проверка наличия ВС в КС
  bool is_plane(){ return this->plane; }
  //-------------------------------------------------------
  //поместить/убрать ВС в данное КС
  void set_plane(bool val){ this->plane = val; }
  //-------------------------------------------------------
  //получить список всех связных КС с данным КС
  numbers *get_links(){ return this->links; }
};
//=========================================================
#endif